package mbeans;

import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession;

import dados.Anuncios;
import dados.Cadastros;
import dominio.Anuncio;
import dominio.Usuario;

@ManagedBean(name="classificados")
@SessionScoped
public class ClassificadosMBean {
	// refer�ncia para uma �nica inst�ncia - Singleton
	private static Cadastros cadastros;
	private List<Anuncio> anuncios;
		
	private String login;
	private String senha;
	private Usuario usuario = null;
	private String msg = "";
	
	
	public ClassificadosMBean() {
		super();
		cadastros = Cadastros.getInstance();
		anuncios = Anuncios.getInstance().getAnunciosCadastrados();
	}
	
	public String autentica() {
		usuario = cadastros.getUsuario(this.login);
		if (usuario != null && senha.equals(usuario.getSenha())) {
			FacesContext facesContext = FacesContext.getCurrentInstance();  
			HttpSession session = (HttpSession) facesContext.getExternalContext().getSession(true);  
			session.setAttribute("usuarioLogado", usuario);
			return "login";
		}
		this.msg = "Login e senha n�o correspondem a um usu�rio cadastrado!";
		return "erro";
	}

	public String getLogin() {
		return login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

	public String getSenha() {
		return senha;
	}

	public void setSenha(String senha) {
		this.senha = senha;
	}
	
	public Usuario getUsuario() {
		return usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}

	public String getMsg() {
		return msg;
	}

	public void setMsg(String msg) {
		this.msg = msg;
	}

	public List<Anuncio> getAnuncios() {
		return anuncios;
	}

	
}
